package com.scau.database.controller.storemanager;

import com.scau.database.utils.WordBuidUtil;
import com.scau.database.utils.entity.OrderInWordTableVO;
import freemarker.template.TemplateException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping("/test/order")
public class StoreManageTestController {
    @Autowired
    private WordBuidUtil wordBuidUtil;

    @GetMapping("/word")
    public Integer getWord(HttpServletResponse httpServletResponse) throws IOException, TemplateException {
        Map<String, Object> dataMap = new HashMap<>();

        dataMap.put("title","知己电子连锁店进货单");
        dataMap.put("id","1234567");
        dataMap.put("date","2020-1-12");
        dataMap.put("buyer","知己电子连锁城");
        dataMap.put("seller","富士康");
        dataMap.put("address","广东省深圳市");
        dataMap.put("pay","支付宝");

        List<OrderInWordTableVO> order = new ArrayList<>();
        OrderInWordTableVO orderInWordTableVO = new OrderInWordTableVO();
        orderInWordTableVO.setOne(1);
        orderInWordTableVO.setT("牙刷");
        orderInWordTableVO.setTh("123131231223");
        orderInWordTableVO.setFo(new BigDecimal("100.5"));
        orderInWordTableVO.setFi(12);
        orderInWordTableVO.setSi(30);
        orderInWordTableVO.setSe(30);
        orderInWordTableVO.setEh(30);
        order.add(orderInWordTableVO);
        dataMap.put("orderList",order);
        wordBuidUtil.renderingWordModel2HTTP(httpServletResponse,"order.ftl",dataMap,"订购单");
        return 1;
    }

    @GetMapping("/async")
    public Integer asyncTest(HttpServletResponse httpServletResponse) throws IOException {
        wordBuidUtil.test(httpServletResponse);
        return 1;
    }
}
